package API使用;

import java.util.Objects;

/**
 * @ClassName : King
 * @Author : LV88VL
 * @Date: 2021/2/10 19:03
 * @Description : JavaBean 国王类
 */
/*一个标准的JavaBean类拥有属性、构造方法、成员方法*/
public class King {
    //属性
    private String name;
    private float ground;
    private float money;
    //构造方法
    public King() {
    }
    //构造方法
    public King(String name, float ground, float money) {
        this.name = name;
        this.ground = ground;
        this.money = money;
    }
    //成员方法

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public float getGround() {
        return ground;
    }

    public void setGround(float ground) {
        this.ground = ground;
    }

    public float getMoney() {
        return money;
    }

    public void setMoney(float money) {
        this.money = money;
    }

    //toString:返回对象的字符串表示形式。通常，该 toString方法返回一个“以文本形式表示”此对象的字符串。结果应该是简洁易懂的表示形式，便于人们阅读。建议所有子类都重写此方法。
    @Override
    public String toString() {
        return "King{" +
                "name='" + name + '\'' +
                ", ground=" + ground +
                ", money=" + money +
                '}';
    }
    //equals:指示其他某个对象是否“等于”该对象。
    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        King king = (King) o;
        return Float.compare(king.ground, ground) == 0 && Float.compare(king.money, money) == 0 && Objects.equals(name, king.name);
    }

    @Override
    public int hashCode() {
        return Objects.hash(name, ground, money);
    }
}
